<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/template.xhtml">
        <ui:define name="body">
            <h:panelGroup id="messagePanel" layout="block">
                <h:messages errorStyle="color: red" infoStyle="color: green" layout="table"/>
            </h:panelGroup>
            <h:form>
                <p:panel id="panel" header="Nuevo Cliente" style="margin-bottom:10px;">
                    <p:messages id="messages" />
                    <p:panelGrid columns="3">
                        <p:outputLabel for="idCliente" value="CI-RUC:" />
                        <p:inputText id="idCliente" value="#{clienteController.selected.idCliente}" label="CI-RUC" 
                            validatorMessage="Longitud minima de 3 caracteres" required="true">      
                            <f:validateLength minimum="3" />
                        </p:inputText>
                        <p:message id="ci-rucMessage" for="idCliente" display="text" />

                        <p:outputLabel for="nombre" value="Nombre:"/>
                        <p:inputText id="nombre" value="#{clienteController.selected.nombre}" label="NOMBRE" 
                            validatorMessage="Longitud minima de 3 caracteres" required="true">      
                            <f:validateLength minimum="3" />
                        </p:inputText>
                        <p:message id="nombreMessage" for="nombre" display="text" />

                        <p:outputLabel for="apellido" value="Apellido:" />
                        <p:inputText id="apellido" value="#{clienteController.selected.apellido}"  
                                    validatorMessage="Longitud minima de 3 caracteres" required="true">
                           <f:validateLength minimum="3" />
                        </p:inputText>
                        <p:message id="apellidoMessage" for="apellido" display="text" /> 

                        <p:outputLabel for="direccion" value="Direccion: " />
                        <p:inputText id="direccion" value="#{clienteController.selected.direccion}"/>
                        <p:message id="direccionMessage" for="direccion" display="text" /> 

                        <p:outputLabel for="telefono" value="Telefono: " />
                        <p:inputMask id="telefono" value="#{clienteController.selected.telefono}" mask="(9999) 999-999" />   
                        <p:message id="telefonoMessage" for="telefono" display="text" /> 
                    </p:panelGrid>
                </p:panel>
                <p:commandButton value="Guardar" update="panel, dataTable" id="save"  
                                 actionListener="#{clienteController.create}" action="#{clienteController.prepareList}"/>
                <p:separator/>
  
                <p:dataTable id="dataTable" var="item" value="#{clienteController.items}">  
                    <f:facet name="header">  
                        Listado de Clientes  
                    </f:facet>  

                    <p:column>
                        <f:facet name="header">
                            <h:outputText value="#{bundle.ListClienteTitle_idCliente}"/>
                        </f:facet>
                        <h:outputText value="#{item.idCliente}"/>
                    </p:column>
                    <p:column>
                        <f:facet name="header">
                            <h:outputText value="#{bundle.ListClienteTitle_apellido}"/>
                        </f:facet>
                        <h:outputText value="#{item.apellido}"/>
                    </p:column>
                    <p:column>
                        <f:facet name="header">
                            <h:outputText value="#{bundle.ListClienteTitle_direccion}"/>
                        </f:facet>
                        <h:outputText value="#{item.direccion}"/>
                    </p:column>
                    <p:column>
                        <f:facet name="header">
                            <h:outputText value="#{bundle.ListClienteTitle_nombre}"/>
                        </f:facet>
                        <h:outputText value="#{item.nombre}"/>
                    </p:column>
                    
                    <p:column>
                        <f:facet name="header">
                            <h:outputText value="#{bundle.ListClienteTitle_telefono}"/>
                        </f:facet>
                        <h:outputText value="#{item.telefono}"/>
                    </p:column>
                </p:dataTable>
                
                
            </h:form>
        </ui:define>
    </ui:composition>

</html>
